home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / maximus / timb6.zip / TIMED.DOC < prev    next >
Text File  |  1992-11-02  |  43KB  |  1,324 lines

  1.  
  2.                ==========================================
  3.  
  4.                                timEd/beta
  5.  
  6.                         A message editor for Squish
  7.  
  8.                   (C) 1992  Gerard van Essen (2:281/527)
  9.  
  10.                ==========================================
  11.  
  12.  
  13.  
  14. !  timEd uses the Squish MSGAPI by Scott Dudley.
  15.  
  16. !  Squish is a trademark of Scott J. Dudley
  17.  
  18. !  timEd uses Ralf Brown's swapping 'spawn' replacement (SPAWNO)
  19.  
  20. !  timEd's screen writing routines are partly based on code from
  21.    jim nutt and Erik Vanriper.
  22.  
  23. !  timEd uses Mark Potter's DVAWARE routines.
  24.  
  25.  
  26. ┌─────────┐
  27. │ History │
  28. └─────────┴──────────────────────────────────────────────────────────
  29.  
  30. (Warning: this part doesn't contain any useful info, 'quick starters'
  31. should skip this.. :-)
  32.  
  33. TimEd is one of those program's that 'were never meant to be'.
  34.  
  35. When Scott Dudley released Maximus 2.00 and Squish 1.00, I immediately
  36. switched (from Qmail, *.MSG) to the much more advanced Squish message
  37. base format. However, initially there were no message editors available,
  38. so I had to use Maximus itself to read the mail. Although this went
  39. reasonably well, it wasn't really fast and I missed some features
  40. ('netmail reply' being the most important one).
  41.  
  42. When Scott released the MSGAPI (and I had just bought my Turbo C
  43. compiler :-) I played with it a bit, and decided to make a message
  44. viewer (yes, viewer only!).
  45.  
  46. I got carried away.
  47.  
  48. Later several message editors for Squish were released, but I always
  49. found reasons not to switch (too large, too slow, too buggy, ugly,
  50. whatever :-).
  51.  
  52. I continued working on timEd, other people showed interest, got their
  53. copy and some of them even liked it!
  54. So.... I decided I would try to make a stable version, that could be
  55. released 'to the public' to check out the reactions (if any). Of course,
  56. a program is never ready (or without bugs), so I delayed it several
  57. times.
  58.  
  59. But this is it! This version has all the features I wanted my editor to
  60. have, in order to work comfortably. I am not very fond of programs that
  61. are full of 'bells and whistles', and you won't find many gee-whiz-bang
  62. features in timEd (although it does have some special things, like a
  63. built in personal mail scanner and a nice 'Find' feature).
  64.  
  65.  
  66. ┌───────┐
  67. │ Beta! │
  68. └───────┴────────────────────────────────────────────────────────────
  69.  
  70.  
  71. Right! This is beta software (and apart from that: *I* wrote it! :-), so
  72. be careful!
  73. Before you run it, back up anything that is worth saving, make your will
  74. and warn your family and relatives.
  75.  
  76. There are no guarentees that timEd doesn't do something terrible to your
  77. setup. Don't say I didn't warn you!
  78.  
  79. This documentation is also beta :-) I'm sure it is missing lots of info
  80. you are looking for, but will never find.
  81.  
  82.  
  83. ┌───────────┐
  84. │ Copyright │
  85. └───────────┴────────────────────────────────────────────────────────
  86.  
  87. * It's freeware, you don't have to pay me anything.
  88.  
  89. * Nobody should pay for timEd (to anyone!)
  90.  
  91. * Nobody should make money out of it (if you know a nice way to make a
  92.   fortune out of it, tell me, 'cause I want my cut!)
  93.  
  94. * People are encouraged to reverse-engineer this program. Send me the
  95.   source you come up with :-)
  96.  
  97. * I would very much appreciate your opinion (either negative or
  98.   positive) about timEd. Just send me a message (even a very short
  99.   one!), so I will know what 'people' think of it.
  100.  
  101. ! Any possible further development of timEd depends on that. If nobody
  102. ! is interested or enthousiastic, I'll end it right here. Of course, I
  103. ! will then try to think of another way to get famous! :-)
  104.  
  105.  
  106. ┌───────────────┐
  107. │ Setting it up │
  108. └───────────────┴────────────────────────────────────────────────────
  109.  
  110. Installing timEd is easy. A working setup consists of three files:
  111.  
  112. timEd.exe (yes!)
  113. timEd.hlp (the helpfile)
  114. timEd.cfg (the configuration file)
  115.  
  116. A sample timEd.cfg is included, edit it to suit your needs. The keywords
  117. that can be used in the configuration file are explained below. Apart
  118. from that, the sample .cfg file is heavily commented.
  119.  
  120. In timEd, you can press F1 in most places to get help ('context
  121. sensitive', as we like to call it :-)
  122.  
  123. TimEd looks for the configuration and help files in the current
  124. directory (can be changed with the -C command line parameter).
  125.  
  126.  
  127. ┌───────────┐
  128. │ timEd.cfg │
  129. └───────────┴────────────────────────────────────────────────────────
  130.  
  131. The configuration file for timEd should be called timEd.cfg and must
  132. reside in the current directory, so timEd can find it (use the -C
  133. command line paramater otherwise).
  134.  
  135. It is a plain ASCII file and may contain comments. A comment is a line
  136. that starts with a semi-column, like this:
  137.  
  138. ; this is a comment.
  139.  
  140. Blank lines are ignored, all others should contain a keyword. Usually,
  141. this is in the form:
  142.  
  143. <keyword> <value> [value value]
  144.  
  145. So first the keyword, followed by the value of that keyword, optionally
  146. followed by more values..
  147.  
  148. The following keywords can be used in timEd.cfg:
  149.  
  150.  
  151. ADDRESS
  152. =======
  153.  
  154. Use this keyword to let timEd know what your address is. You can enter
  155. up to 10 of these, for your main address and AKA's.
  156.  
  157. The first one given will be the default address. If you want to use an
  158. AKA for a certain area, you must use the -P switch (see EchoArea
  159. keyword). -P switches found in a Squish configuration file will be
  160. recognized and used.
  161.  
  162. Example:
  163.  
  164. address          2:281/527
  165. address          2:500/133.999
  166.  
  167.  
  168. NAME, ALIAS
  169. ===========
  170.  
  171. Type your name (and optionally alias) here. The NAME will be used in
  172. the FROM: field of every message you write.
  173. The alias will be used as a second name to look for in the personal mail
  174. scan (ALT-P from the area selection menu).
  175. *Always* put double quotes around the name.
  176.  
  177. Example:
  178.  
  179. name       "Gerard van.Essen"
  180. alias      "Gerard van Essen"
  181.  
  182.  
  183. NODELIST
  184. ========
  185.  
  186. This tells timEd where it can find a Version 7 nodelist. The nodelist is
  187. very useful when entering netmail: timEd can look for addresses and
  188. SysOp names in the nodelist, to find the coreesponding data of that
  189. node. (So, when entering a name, timEd will try to find the address,
  190. when entering an address, timEd will try to find the name..).
  191.  
  192.  
  193. Example:
  194.  
  195. nodelist    C:\Binkley\Nodelist
  196.  
  197.  
  198. ORIGIN
  199. ======
  200.  
  201. This tells timEd what the default origin is. This line will appear at
  202. the bottom of every echomail message you write.
  203.  
  204. You can override this default on a per area basis (by pressing ALT-H in
  205. timEd, while you are in message area).
  206. *Always* put double quotes around the origin.
  207.  
  208.  
  209. origin    "   Contrast BBS, 070-3234903 [V22..32bis]   "
  210.  
  211.  
  212. EDITOR
  213. ======
  214.  
  215. This tells timEd what editor you want to use to edit your messages.
  216. Whenever it is time to edit a message, timEd will execute this program.
  217. Entering a full path is not required (because timEd will look for the
  218. editor in your PATH), but speeds up things.
  219.  
  220.  
  221. Example:
  222.  
  223. Editor c:\misc\q.exe
  224.  
  225.  
  226. HELLO, REPHELLO
  227. ===============
  228.  
  229.  
  230. HELLO    : This gives the string to start a new message with. You
  231.            usually say 'hello' before you start a message, so this is
  232.            called 'hello' and will be referred to as 'hellostring'
  233.            throughout the documentation.
  234.  
  235. REPHELLO : This gives the string to start a reply with. This is usually
  236.            something like: 'In a message xxx wrote to yyy'. This will be
  237.            referred to as the 'rephello string'.
  238.  
  239. *Always* put double quotes around the 'hello' and 'rephello' strings.
  240.  
  241. There are four 'variables' that can be used in this string (and in the
  242. 'rephello' string as well):
  243.  
  244.  %to    : The full name of the person that the message IS addressed to
  245.           (for a new message) or that the original WAS addressed to (for
  246.           a reply, the REPHELLO keyword).
  247.  %fto   : As %to, but only the first name of that person.
  248.  
  249.  %from  : The full name of the person who wrote the original message (in
  250.           the case of a reply, so the REPHELLO keyword). In the case of
  251.           a new message this would be the name of the person who wrote
  252.           (writes) this new message (but that, of course, is you
  253.           yourself :-)
  254.  %ffrom : As %from, but only the first name of that person.
  255.  
  256. An example to clear things up:
  257.  
  258. Let's say I'm writing a message to Scott Dudley, so that's a new
  259. message, and the 'HELLO' keyword would be of significance here. The
  260. header would look like this:
  261.  
  262. -=-
  263.  
  264. From: Gerard van.Essen
  265. To  : Scott Dudley
  266. Subj: Your MSGAPI
  267.  
  268. -=-
  269.  
  270. In this case, %to == 'Scott Dudley' and %fto == 'Scott'.
  271.  
  272. If my timEd.cfg has:
  273.  
  274. hello           "Hello %to!"
  275.  
  276. My message would be started with:
  277.  
  278. Hello Scott Dudley!
  279.  
  280. Of course, because we treat everyone like our best friend in Fidonet, I
  281. have:
  282.  
  283. hello           "Hello %fto!"
  284.  
  285. As a result, my message will start with:
  286.  
  287. Hello Scott!
  288.  
  289. Right, that's the 'hellostring'. Now, let's say Scott receives my
  290. message, and decides to write something back. As that would be a reply,
  291. the 'rephello string' will be used.
  292.  
  293. Looking at our message again (the same one, as this is the message Scott
  294. is writing a reply to..):
  295.  
  296. -=-
  297.  
  298. From: Gerard van.Essen
  299. To  : Scott Dudley
  300. Subj: Your MSGAPI
  301.  
  302. -=-
  303.  
  304. In this case, %to   == 'Scott Dudley'     and %fto   == 'Scott'
  305.               %from == 'Gerard van.Essen" and %ffrom == 'Gerard'
  306.  
  307. Now if Scott uses timEd, *and* he has this in his timed.cfg:
  308.  
  309. rephello        "%from wrote in a message to %to:"
  310.  
  311. His reply would start with:
  312.  
  313. Gerard van.Essen wrote in a message to Scott Dudley:
  314.  
  315. And he can start typing..
  316.  
  317.  
  318. SIGNOFF
  319. =======
  320.  
  321. This tells timEd what should be placed at end of every message. Most
  322. people always use the same 'signoff', so why not let timEd do it for
  323. you..
  324. *Always* put double quotes around the 'signoff' message.
  325.  
  326.  
  327. Signoff         "Groetjes, .......   === Art ==="
  328.  
  329.  
  330. In adition, you can also use \n in a string, to indicate a newline. So:
  331.  
  332. signoff  "Greetings,\n                Gerard"
  333.  
  334. expands to something like:
  335.  
  336. -=-
  337.  
  338. Greetings,
  339.               Gerard
  340.  
  341. -=-
  342.  
  343. Note, however, that strings longer than +/- 70 characters cannot be
  344. editted from within timEd (with ALT-H).
  345.  
  346.  
  347. ECHOLOG
  348. =======
  349.  
  350. Where to put the echotoss.log file (name + path). If this is specified,
  351. an echotoss.log file will be written when you exit timEd.
  352.  
  353. An echotoss.log file is a file containing a list with the areatags of
  354. areas that contain newly entered messages. You can pass this file to
  355. your tosser/scanner to scan out and pack these new messages. (For
  356. Squish, this is done using the '-f' command line parameter).
  357.  
  358. Example:
  359.  
  360. EchoLog C:\timEd\echotoss.log
  361.  
  362.  
  363. SHOWKLUDGES
  364. ===========
  365.  
  366. This tells timEd if you want to see the control information in the
  367. messages by default (or not..).
  368. For this purpose, 'kludges' includes real kludges (like MSGID, REPLY,
  369. PID, PATH etc.) but also SEEN-BY lines.
  370.  
  371. This is the setting at startup, you can toggle this setting from within
  372. timEd by pressing ALT-K or ALT-V when reading a message.
  373.  
  374. Example:
  375.  
  376. showkludges yes
  377.  
  378.  
  379. SWAP_ON_EDIT, SWAP_ON_SHELL
  380. ===========================
  381.  
  382. These two statements determine timEd's behaviour when it calls other
  383. programs.
  384.  
  385. There are two options:
  386.  
  387. Yes : Swap timEd out of main memory when calling the other program. This
  388.       will only leave about 250 bytes of timEd in main memory, thus
  389.       freeing up a lot of memory for the other program to run in.
  390.  
  391. No  : Don't swap timEd out, load the other program in the memory
  392.       remaining, with timEd still in memory.
  393.  
  394. The second option takes more memory, but is faster (no swapping has to
  395. take place). TimEd will be swapped to XMS, EMS or to Disk if no XMS/EMS
  396. is available. Swapping to disk is quite slow, of course..
  397.  
  398.  
  399. Swap_on_Edit:  Determines if timEd is swapped out when the editor is
  400.                called to edit a message. This is done a lot of course
  401.                (especially if you write a lot of mail :-), so if you
  402.                have enough memory to hold both timEd and the editor in
  403.                memory (and this is usually the case), I would set this
  404.                to 'No'.
  405.  
  406. Swap_on_Shell: Determines if timEd is swapped out when shelling to DOS.
  407.                Usually speed is not really important here, while lots of
  408.                available can be very useful, so it might be a nice idea
  409.                to set this to 'Yes'.
  410.  
  411.  
  412. MACRO
  413. =====
  414.  
  415. Others call this 'alias', but that keyword was already used :-)
  416.  
  417. It works like this: in a netmail message, you enter a (short) name, that
  418. was also listed in timed.cfg using a 'macro' statement. TimEd will
  419. recognize this statement and expand it for you, saving you a lot of
  420. typing. This may include the 'to:' field, the address the message is
  421. sent to, and the subject.
  422.  
  423. Examples:
  424.  
  425. macro am,areamgr,2:281/520,my_pass
  426.  
  427.   When you enter 'am' in the 'to:' field, timEd will replace it with
  428.   'areamgr', and fill in the address (2:281/520) and subject (my_pass)
  429.   lines for you. So, a total of 3 items were listed after the macro name.
  430.  
  431.  
  432. macro et,Erik Troost,2:281/527.2
  433.  
  434.   This will expand to 'Erik Troost' with the address filled in. That's 2
  435.   items after the macro name.
  436.  
  437.  
  438. macro rvdn,ROn van der Nagel
  439.  
  440.   This will only expand the macro (rvdn) to ROn van der Nagel. Only 1
  441.   item listed behind the macro name.
  442.  
  443. Note that spaces are allowed in a macro statement. They are never
  444. stripped, so don't put them were you don't want them!
  445.  
  446.  
  447. COLOURS
  448. =======
  449.  
  450. Lots of colours can be specified by the user. The numbers specify the
  451. colour to be used.
  452.  
  453. Note: by default, timEd uses a monochrome colour setup. So if you don't
  454. have a colour monitor, you can initially leave all color_... statements
  455. out (in fact, you can do that with a colour monitor as well :-).
  456.  
  457.  
  458. The numbering is as follows:
  459.  
  460.               Foreground  Background
  461.  
  462.  BLACK           0            0
  463.  BLUE            1            16
  464.  GREEN           2            32
  465.  CYAN            3            48
  466.  RED             4            64
  467.  MAGENTA         5            80
  468.  BROWN           6            96
  469.  LIGHTGRAY       7            112
  470.  DARKGRAY        8            n.a.
  471.  LIGHTBLUE       9            n.a.
  472.  LIGHTGREEN     10            n.a.
  473.  LIGHTCYAN      11            n.a.
  474.  LIGHTRED       12            n.a.
  475.  LIGHTMAGENTA   13            n.a.
  476.  YELLOW         14            n.a.
  477.  WHITE          15            n.a.
  478.  BLINK          128           n.a.
  479.  
  480.  
  481. Now take the preferred colours of the foreground and the background of a
  482. certain item, and add them.
  483.  
  484. So, blue (foreground) on black (background) would be 1 + 0 = 1
  485.     lightgray on black is 7 + 0 = 7
  486.     white on blue is 15 + 16 = 31 etc.
  487.  
  488. Here are the colours you can define, and the keywords to use + my
  489. personal setting of these colours.
  490.  
  491. There are three main categories:
  492.  
  493. * color_as...
  494.  
  495. For the area selection screen, where you can select a message area to
  496. read. These colours will also be used for the message header list
  497. (ALT-L) and the file selection box that will appear when you use a
  498. 'wildcard' in the subject when doing a file attach.
  499.  
  500. * color_msg...
  501.  
  502. For the part where you will spend most time: the message reading screen.
  503.  
  504. * color_pop...
  505.  
  506. For popup-screens, like help screens and errors.
  507.  
  508.  
  509. Area selection screen settings
  510. ------------------------------
  511.  
  512. Area selection 'Title' Bar, at the top of the screen:
  513.  
  514. color_asbar     112
  515.  
  516. Area Selection Frame, the single line around the total screen:
  517.  
  518. color_asframe     4
  519.  
  520. Area Selection Normal Text, like the names of the areas:
  521.  
  522. color_astext      7
  523.  
  524. Area Selection Highlighted bar, the message area that is currently
  525. selected:
  526.  
  527. color_ashigh     31
  528.  
  529. Special colour, currently only used in a msg header list for personal
  530. messages:
  531.  
  532. color_asspecial  14
  533.  
  534.  
  535. Message reading screen settings
  536. -------------------------------
  537.  
  538. Message reader Header, like the From: and To: fields:
  539.  
  540. color_msgheader   7
  541.  
  542. Message reader horiz. line, between header and text:
  543.  
  544. color_msgline     9
  545.  
  546. Message reader quotes, quoted text (starting like GvE> ):
  547.  
  548. color_msgquote   14
  549.  
  550. Message reader normal text, the body of the message:
  551.  
  552. color_msgtext     7
  553.  
  554. Message reader 'Status' bar at bottom, with current msg area etc:
  555.  
  556. color_msgbar     31
  557.  
  558. Message reader origin, the origin of a message:
  559.  
  560. color_msgorigin 15
  561.  
  562. Message reader kludges (controlinfo like MSGID and SEEN-BY):
  563.  
  564. color_msgkludge  3
  565.  
  566.  
  567. Popup boxes settings
  568. --------------------
  569.  
  570. Popup boxes frame, the box around a popup text:
  571.  
  572. color_popframe 121
  573.  
  574. Popup boxes text, the text inside the box:
  575.  
  576. color_poptext 112
  577.  
  578.  
  579. SQUISHCFG
  580. =========
  581.  
  582. TimEd can read the Squish.cfg for you, and get all EchoArea lines from
  583. that configuration. Note that Netmail, bad_msgs and dupes are not read;
  584. you will have to define those manually, because you might not want them
  585. (dupes, bad_msgs) or usually want to specify special attributes for that
  586. area (netmail).
  587.  
  588. -P switches found in Squish.cfg will be recognized and used when
  589. creating a message.
  590.  
  591. Give full path and name of the file. If it contains a AreasBBS
  592. statement, the areas.bbs file will be read as well.
  593.  
  594. Squishcfg c:\squish\squish.cfg
  595.  
  596.  
  597. ECHOAREA, NETAREA
  598. =================
  599.  
  600. Area definition, Squish alike. You can specify areas in timEd.cfg as
  601. well, in addition to the areas found in Squish.cfg.
  602.  
  603. The squish.cfg file is read *after* these are read, however, so you can
  604. 'overrule' areas here (areas already defined in timEd.cfg will be
  605. skipped in squish.cfg and/or areas.bbs).
  606.  
  607. This is the only place where you can give a 'long' description of an
  608. area (can't do that in squish.cfg, of course) and where you can specify
  609. 'default message attributes' for newly created messages in that area.
  610.  
  611. It looks quite a bit like definitions in squish.cfg. There are 3
  612. keywords:
  613.  
  614. ■ EchoArea  - for echomail areas
  615. ■ NetArea   - for netmail areas (define as many as you want)
  616. ■ LocalArea - for local areas
  617.  
  618. The format of all these:
  619.  
  620. <keyword> <description> <areatag> <location> [-Pxxx -Axx -$]
  621.  
  622. <keyword>     is NetArea, EchoArea or LocalArea.
  623. <description> is a description of the area, surrounded by double quotes
  624. <areatag>     is the offical areatag of the area (like: TUB)
  625. <location>    is the directory/basename where the area resides.
  626.  
  627. And where:
  628.  
  629. -$ is for squish areas
  630.  
  631. -A gives default attributes. (p = private, c = crash, k = killsent).
  632.  
  633. -Pz:nnn/nnn.p is the AKA to use for this area (also active for NetArea).
  634.  
  635.  
  636. Examples:
  637.  
  638. NetArea   "Netmail Area"   netmail      c:\fd\netmail         -Apk
  639.  
  640. My primary netmail area, with a nonsense areatag, is in *.MSG format and
  641. all messages get the 'private' and 'kill/sent' bits by default. The
  642. 'local' bit is always added to all messages as well.
  643.  
  644. NetArea   "Wlink netmail"  wlnk_net     c:\fd\wlink  -Ap -$ -P60:100/112
  645.  
  646. A second netmail area, in Squish format. Messages get the 'private' bit
  647. by default and I use my AKA 60:100/112 in this netmail area.
  648.  
  649. LocalArea "Bad_Msgs"       BAD_MSGS     C:\Squish\Msgs\Bad    -$
  650. LocalArea "Dupes"          DUPES        C:\Squish\Msgs\Dupes  -$
  651.  
  652. Here I add my bad_msgs and dupe areas. I like to see what's happening.
  653.  
  654. LocalArea "SysOp"          Sysop        d:\local\sysop        -$ -Ap
  655.  
  656. I define my SysOp area, default private messages.
  657.  
  658. EchoArea  "Contrast"       CONTRAST     d:\echo\CONTRAST      -$
  659.  
  660. An echomail area (my local points area, defined here as well as in
  661. squish.cfg, but I define it here, because I want it at the top of my
  662. area selection screen..)
  663.  
  664. EchoArea  "Points Delmare" POINTS.133   c:\squish\delmare -$ -P2:500/133.999
  665.  
  666. Another echomail area, where I use my AKA 2:500/133.999
  667.  
  668.  
  669. ┌────────────────────┐
  670. │ Working with timEd │
  671. └────────────────────┴───────────────────────────────────────────────
  672.  
  673. Well, if you changed timed.cfg to suit your needs, you can fire timEd
  674. up to see if it'll work.
  675. At startup, timEd shows an intro-screen where you can see what config
  676. files it is currently reading (timed.cfg, squish.cfg and areas.bbs).
  677.  
  678. When the configuration files are parsed, timEd will the take you to the
  679. area selection screen. You should see a list of all areas you defined.
  680. The first area will be 'highlighted'.
  681.  
  682. If you want to check the intro-screen, you can specify the -p command
  683. line parameter. TimEd will then wait for you to press a key, before
  684. going to the Area Selection Screen (like: "timed.exe -p".)
  685.  
  686.  
  687. The Area Selection Screen.
  688. ==========================
  689.  
  690. Use the cursor keys (up and down), <page up>, <page down>, <home> and
  691. <end> to move around.
  692.  
  693. A quick way to find an area is 'speedsearch'. If you know the official
  694. areatag of the area you want to read, start typing that tag. TimEd will
  695. try to find the first areatag matching the characters you typed. The
  696. characters will also appear at the top of the screen. You can press
  697. <ESC> to clear the 'speedsearch string'.
  698.  
  699. To start reading messages in an area, press <ENTER> or the right arrow
  700. key. TimEd will then enter that area and display the last read message.
  701.  
  702. On the area selection screen, the following keys are also active:
  703.  
  704. ALT-S : scan areas for new mail. This will determine the number of
  705.         messages present in every area, and the number of new (unread)
  706.         messages.
  707.  
  708. ALT-P : personal mail scan. This will scan all areas for mail addressed
  709.         TO: you or your alias (as defined in timed.cfg).
  710.  
  711.         When a personal message is found:
  712.  
  713.         ALT-R : reply to the message.
  714.         ALT-N : reply in another message area.
  715.  
  716. ALT-X : Exit timEd. If specified in timed.cfg, an 'echotoss.log' file
  717.         will be written at this point.
  718.  
  719. ALT-L : Enter the area, and go directly into the 'List mode', showing
  720.         a list of message headers.
  721.  
  722. ALT-J : Jump to DOS.
  723.  
  724. F1    : Show a helpscreen with available functions.
  725.  
  726.  
  727. The Message Reading Screen.
  728. ===========================
  729.  
  730. When you enter an area, the lastread message will be shown.
  731.  
  732. You can scroll the message body (if it doesn't fit on one screen
  733. entirely) using curor keys (up and down) and <page up>, <page down>,
  734. <home> and <end>.
  735.  
  736. <ESC>, '+' or ALT-A will take you back to the area selection screen.
  737.  
  738.  
  739. Moving around in a message area.
  740. --------------------------------
  741.  
  742. Press the right arrow key to go to the next message, the left arrow key
  743. to go to the previous message.
  744.  
  745. Ctrl <END> will take you to the last message in the area.
  746.  
  747. Ctrl <HOME> will take you to the first message in the area.
  748.  
  749. Type a number to go to a specific message. A small box will pop-up,
  750. where you can edit the number of the message to jump to.
  751.  
  752. Ctrl <left> will go to the 'original' message, i.e. the message that the
  753. current message is a reply to. If you are reading a reply and don't know
  754. anymore what the original message was about, use this.
  755.  
  756. Ctrl <right> will go to the reply to this message (if there are any
  757. replies already). If there is more than one reply, a list will be shown
  758. (with the name of the sender of the reply) so you can choose one.
  759.  
  760. The availability of replies and 'the original' is shown at the top of
  761. the message screen. An example:
  762.  
  763. -=-
  764.  
  765. Date : 20-10-'92, 21:38     1744
  766. From : Jan Terpstra                               2:280/216.0                   
  767. To   : Hans Boelens                                                             
  768. Subj : Negeer dit!                                                              
  769. ─────────────────────────────────────────────────────────────────────────────
  770.  
  771. -=-
  772.  
  773. Here you can see, that this message is a reply to message 17, and that
  774. there is a reply to this message, number 44. If there would have been
  775. more replies (and you used a reply linker that is capable of specifying
  776. 'multiple uplinks', a feature that is only available for Squish style
  777. message bases) there would have been more numbers after the '44'.
  778.  
  779.  
  780. Entering Messages.
  781. ------------------
  782.  
  783. In order to generate a message, you must use an external editor. TimEd
  784. will use the text generated by this editor to create a message.
  785.  
  786. Using an external editor has one big problem: most editors put a 'hard
  787. return' at the end of *every* line, not just of line where the user
  788. actually pressed <ENTER>.
  789.  
  790. In Fidonet, 'hard returns' should only be present at the end of a
  791. *paragraph*. The actual formatting (word wrapping) of the paragraph
  792. should be done by the message reader, according to the current screen
  793. size (usually, the screen has lines of 80 characters, but that is
  794. certainly not always the case!).
  795.  
  796. Placing a 'hard return' at the end of every line (at postion 80), would
  797. only use the first 80 characters of a line, even on a 132 character
  798. display!
  799.  
  800. So, timEd has to strip 'hard returns'. It tries it's very best, but
  801. sometimes fails miserably.
  802.  
  803. One of the 'rules' is, that timEd will strip the 'hard return', if it is
  804. found at a postion *after* <length of line> - 20 (so on a 80 character
  805. display, it would be 60). 'Hard returns' found after that postion are
  806. supposed to be the result of the 'word wrapping' feature of an editor
  807. and are stripped.
  808.  
  809. There is a way to prevent timEd from 'intelligently' stripping 'hard
  810. returns'. Usually it does what you want, but formatted text can be
  811. awfully screwed up, when the individual lines exceed 60 characters in
  812. length (for example Binkley logfiles :-). TimEd will then strip 'hard
  813. returns' making a mess of your nicely formatted logfile or C-listing.
  814.  
  815. There are 2 methods to prevent timEd from stripping 'hard returns':
  816.  
  817. - Forcing a 'hard return' for one line:
  818.  
  819.     Put a ~ at the end of a line. The ~ will be replaced with a 'hard
  820.     return'.
  821.  
  822. - Forcing 'hard returns' for a sequence of lines:
  823.  
  824.     Put ~~ on the beginning of a line (rest of line should be empty!) to
  825.     start, and another one at the end.
  826.     All text between those two lines will get a 'hard return' at the end
  827.     of the line. The lines with the ~~ at the beginning will be stripped
  828.     from the text.
  829.  
  830. Examples:
  831.  
  832. This line will certainly have a 'hard return' added to it.~
  833.  
  834. Now look at my nicely formatted logfile:
  835.  
  836. -=-
  837.  
  838.   ~~
  839.   + 23 Sep 03:23:35 MAX  CPS: 231 (52751 bytes)  Efficiency: 96%
  840.   = 23 Sep 03:23:35 MAX  DL-Z C:\Files\Tekst\Contrast.Lzh
  841.   = 23 Sep 03:23:35 MAX  Free DL: reimbursed 227 seconds
  842.   = 23 Sep 03:23:35 MAX  Free DL: reimbursed 51 Kb
  843.   + 23 Sep 03:23:59 MAX  Jack Van Leeuwen off-line. Calls=16, Len=6, Today=6
  844.   : 23 Sep 03:24:00 MAX  End, v2.01 (5)
  845.  
  846.   ~~
  847.  
  848. -=-
  849.  
  850.  
  851. With this knowledge, we can look at the commands that will let you enter
  852. a message, but before that, we'll look at the string editing functions.
  853.  
  854.  
  855. String editing in timEd
  856. =======================
  857.  
  858. In timEd, there are a few functions that let you edit strings. Some
  859. examples inlcude generating a message header (TO: field, address,
  860. subject) and the 'write message to file', where you have to enter a
  861. filename.
  862.  
  863. All string editing function use the same routine, where the following
  864. keys are active:
  865.  
  866. Right arrow, lef arrow    : move left and right in string.
  867. <end>, <home>             : go to the beginning or the end of the string.
  868. <ctrl-left>, <ctrl-right> : jump to previous or next word.
  869. <ctrl-end>                : delete string from cursor position to end.
  870. Delete and backspace work as expected.
  871. Press <INS> to toggle 'insert mode'.
  872.  
  873. And, very useful:
  874.  
  875. CTRL-Y : Delete entire string.
  876.  
  877.  
  878. Now the functions to use while you are reading a message:
  879.  
  880.  
  881. ALT-E    : Enter message
  882.  
  883. This will let you create a new message in the current area. TimEd will
  884. first let you edit the header, and will then spawn the editor, where you
  885. can type in the message text. Save the text and exit the editor. You
  886. will then come back in timEd, that will read your message and save it.
  887.  
  888. See also the section 'Creating netmail and file attaches'.
  889.  
  890.  
  891. ALT-R    : Reply to message
  892.  
  893. This will let you write a reply to the message that is currently shown
  894. on the screen. TimEd will let you edit the header (press <ENTER> to
  895. accept the defaults) and quote the entire message. Then the editor will
  896. be spawned..
  897.  
  898.  
  899. ALT-N    : Reply other area
  900.  
  901. Create a reply, but select another area to put the reply in. This will
  902. first take you to the Area Selection Screen, where you can choose the
  903. area.
  904.  
  905.  
  906. ALT-O    : Reply 'followup'
  907.  
  908. This will let you quote the message text and add your comments, but will
  909. not address the message to the writer of that message, but to the person
  910. to whom the current message is addressed to.
  911.  
  912. So, when someone writes a message to John, and you use ALT-O on that
  913. message, it will be quoted and also addressed to John. You can then add
  914. "I want that too!", or something similar :-)
  915.  
  916.  
  917. ALT-T    : Reply, accept defaults
  918.  
  919. This is the equivalent of ALT-R, but you will go directly to the editor,
  920. accepting the defaults for the TO: and Subj: fields.
  921. This is a fast way to reply, for lazy people with little time :-)
  922.  
  923.  
  924. ALT-C    : Change message
  925.  
  926. This will let you change the message (header + body).
  927.  
  928.  
  929. ALT-D    : Delete message
  930.  
  931. Delete the current message. TimEd will first ask a confirmation.
  932.  
  933.  
  934. ALT-W    : Write to file
  935.  
  936. Write the current message to a file. TimEd will ask for a filename to
  937. write to. You can also put (for example) LPT1, PRN as the 'filename' to
  938. send output to the printer.
  939.  
  940.  
  941. ALT-M    : Move, copy, forward
  942.  
  943. This will let you move, copy or forward the current message to another
  944. area.
  945. It will first show you the Area Selection Screen, where you can pick the
  946. destination area of your choice.
  947.  
  948. The 'forward' option will let you edit the header (TO: and Subj:
  949. fields) before saving the message.
  950.  
  951.  
  952. ALT-V, K : Toggle kludges
  953.  
  954. This will let you toggle the display of kludges (for this purpose, that
  955. also includes SEEN-BY lines). De default (at startup) can be set in
  956. timEd.cfg, using the 'showkludges' keyword.
  957.  
  958.  
  959. ALT-J : Jump to DOS.
  960.  
  961. This will let you 'shell' to DOS. Type 'exit' to return to timEd.
  962.  
  963.  
  964. ALT-I : Message & Area info
  965.  
  966. This will show a pop-up box with some info about the current message and
  967. the current area.
  968.  
  969.  
  970. F1 : Help
  971.  
  972. This shows a short help-screen.
  973.  
  974.  
  975. ALT-X : Exit timEd
  976.  
  977. This will return you to the DOS propmpt. If defined in timEd.cfg, an
  978. echotoss.log file will be generated at this time.
  979.  
  980.  
  981. ALT-H         : Edit 'Hello' strings
  982.  
  983. This will show a pop-up box, where you can edit the 'hellostring', the
  984. 'rephello' string, your 'signoff' and 'origin line' FOR THE CURRENT AREA
  985. ONLY.
  986.  
  987. With this you can customize your setup on a per-area basis.
  988.  
  989. The editted strings will be saved in the message area, so timEd can
  990. continue using them at a later time as well. Whenever timEd detects a
  991. 'custom setup' file in a message area, it will use the strings contained
  992. in that file, instead of the defaults defined in timEd.cfg.
  993.  
  994. TimEd saves the info in:
  995. <areaname>.SQT for Squish areas, and
  996. timed.dat      for *.MSG areas.
  997.  
  998. The origin in saved in:
  999. <areaname>.SQO for Squish areas, and
  1000. origin         for *.MSG areas.
  1001.  
  1002.  
  1003. The List Mode.
  1004. --------------
  1005.  
  1006. ALT-L    : List headers
  1007.  
  1008. This will show you a list of message headers in the current area.
  1009.  
  1010. Use <cursor up>, <cursor down>, <page up>, <page down>, <home> and <end>
  1011. to move around through the list.
  1012.  
  1013. Press <ENTER> to read the highlighted message.
  1014.  
  1015. <ESC> will take you back to the current message before you pressed
  1016. ALT-L.
  1017.  
  1018. Other keys that are active in 'list mode':
  1019.  
  1020. <Space> : mark highlighted message
  1021.  
  1022. + : mark range of msgs
  1023. - : unmark range of msgs
  1024.  
  1025. This will show a pop-up box, where you can enter the range of messages
  1026. to be marked.
  1027.  
  1028. ALT-D : kill all marked msgs.
  1029. ALT-M : move all marked msgs to another area.
  1030. ALT-C : copy marked msgs to another area.
  1031. ALT-W : write marked msgs to file.
  1032. F1    : Show a short help screen.
  1033. ALT-J : Jump to DOS.
  1034.  
  1035.  
  1036. TimEd's Find feature.
  1037. =====================
  1038.  
  1039. ALT-F    : Find message
  1040.  
  1041. This will show a small pop-up screen, where you can set the criteria for
  1042. the search. It looks like this:
  1043.  
  1044.  
  1045. ╔════════════════════════════════════════════════════════════╗
  1046. ║                                                            ║
  1047. ║  ┌─ Areas: ───────────────┐┌─ Search for: ──────── in: ─┐  ║
  1048. ║  │ () Current Area only  ││ ░░░░░░░░░░░░░░░░░░░░       │  ║
  1049. ║  │ ( ) All Areas          ││                            │  ║
  1050. ║  └────────────────────────┘│                            │  ║
  1051. ║  ┌─ Messages: ────────────┐│                            │  ║
  1052. ║  │ () From Lastread      ││                            │  ║
  1053. ║  │ ( ) All Messages       ││                            │  ║
  1054. ║  └────────────────────────┘│                            │  ║
  1055. ║                            │                            │  ║
  1056. ║                            │                            │  ║
  1057. ║                            │                            │  ║
  1058. ║                            └────────────────────────────┘  ║
  1059. ║                                                            ║
  1060. ║                    Press F1 for help                       ║
  1061. ║                                                            ║
  1062. ╚════════════════════════════════════════════════════════════╝
  1063.  
  1064.  
  1065. Give up to 10 string to search for. This will be an 'OR' search, so if
  1066. *any* of the strings is found in the indicated location(s) [ F)rom
  1067. field, T)o field, S)ubject, B)ody ] the message will be shown.
  1068. You can give more than one location, so for example..
  1069.  
  1070. intel    SB
  1071.  
  1072. .. is legal (search for 'intel' in Subject and Body).
  1073.  
  1074. The search is _not_ case-sensitive.
  1075.  
  1076. Searching will start when CTRL-ENTER is pressed. ALT-R clears
  1077. all strings entered.
  1078.  
  1079. Use the <ENTER> and TAB keys to move around.
  1080.  
  1081. When a match is found, the message will be shown, and you can use ALT-R
  1082. and ALT-N to reply, if necessary.
  1083.  
  1084. Other keys (like cursor right and left) continue the search. You can
  1085. interrupt the search at any time by pressing <ESC>.
  1086.  
  1087.  
  1088.  
  1089. Creating netmail and file attaches.
  1090. ===================================
  1091.  
  1092. This is a special section on the netmail area. Netmail is different from
  1093. echomail in many ways, and timEd behaves differently when you enter
  1094. netmail.
  1095.  
  1096. While in the netmail area, you will also have to enter a fidonet
  1097. address, in addition to the name of the recipient.
  1098.  
  1099. Timed can help you in several ways, especially if a Version 7 nodelist
  1100. is present.
  1101.  
  1102.  
  1103. Entering a name:
  1104. ----------------
  1105.  
  1106. When you enter a name (or part of the last name) in the TO: field and
  1107. press <ENTER>, timEd will try to find that name in the nodelist and when
  1108. found it will show a pop-up box with found address and other
  1109. nodelist info. If you then press <ENTER>, timEd will fill in the found
  1110. address for you.
  1111.  
  1112.  
  1113. Entering an address:
  1114. --------------------
  1115.  
  1116. In the TO: field, you can also enter an address (!). Again, timEd will
  1117. try to locate that address in the nodelist and try to fill the name in
  1118. for you.
  1119.  
  1120. There are several shortcuts when entering an address. When you don't
  1121. type in a 3D/4D address, timEd will fill the missing parts in with the
  1122. default from *your* address.
  1123. An example:
  1124.  
  1125. My address is 2:281/527.
  1126.  
  1127. If I now enter: 281/1, so with a missing ZONE number, timEd will
  1128. fill in *my* zone number (that's 2, so the address becomes 2:281/1).
  1129.  
  1130. In this case, I could even have entered: 1, because then timEd would
  1131. have filled in net 281 (my NET) and zone 2 (my ZONE), producing the
  1132. wanted address (2:281/1).
  1133.  
  1134. I can also enter .1, (so missing zone, net and node info) and timEd will
  1135. fill in my zone (2), my net (281) and my node (527), producing
  1136. 2:281/527.1.
  1137.  
  1138. After 'expanding' the address, timEd will try to find it in the
  1139. nodelist.
  1140.  
  1141.  
  1142. Generating a file-attach message.
  1143. ---------------------------------
  1144.  
  1145. TimEd will try to detect if you entered a path specification in the
  1146. 'subject' field, and set the file-attach bit automatically if you did.
  1147. Of course you can also set the file attach bit manually.
  1148.  
  1149. TimEd will then check if the filename(s) entered on the subject line
  1150. exist, and if you entered a wildcard and more than one match is found,
  1151. timEd will show a list with matching files. You can then 'tag' the files
  1152. you want to attach.
  1153. If you tag more files than fit on the subject line, timEd will generate
  1154. extra messages.
  1155.  
  1156. A file-attach list may look like this:
  1157.  
  1158. -=-
  1159.  
  1160. Date : 25-10┌───────────────────────────────────────────────────────┐a Kill Loc
  1161. From : Gerar│ Current filespec: c:\files\c\t*.*                     │           
  1162. To   : ROn v└───────────────────────────────────────────────────────┘           
  1163. Subj : c:\files\c\t*.*                                                          
  1164. ────────────────────────────────────────────────────────────────────────────────
  1165. ┌──────────────────────────────────────────────────────────────────────────────┐
  1166. │  TABX.C            3 K                                                       │
  1167. │  TADV2DEM.ARJ     53 K                                                       │
  1168. │  TC1TUTOR.ARJ    105 K                                                       │
  1169. │  TC2TUTOR.ARJ     83 K                                                       │
  1170. │  TDT-2.ZIP       268 K                                                       │
  1171. │  TDT-3.ZIP       249 K                                                       │
  1172. └──────────────────────────────────────────────────────────────────────────────┘
  1173.                                                                                 
  1174. -=-
  1175.  
  1176. You can now 'tag' files with <ENTER> or <SPACE>, move around with
  1177. <cursor up> and <cursor down> etc, and accept the currently tagged files
  1178. with <CTRL-ENTER>.
  1179.  
  1180. This process will be repeated for all entered file specifications.
  1181.  
  1182.  
  1183. TimEd's CC: feature.
  1184. ====================
  1185.  
  1186. TimEd can also make 'carbon copies' of netmail messages you write. It
  1187. can happen that you want to send an exact copy of a message to someone
  1188. other than the original recipient of the message.
  1189. For example, when I release a new beta version, I might have to write
  1190. the same netmail message for every beta tester.
  1191.  
  1192. Now say I want to write the same message to Kasper Kwant, ROn van der
  1193. Nagel and Frank Troost.
  1194. I would enter the message, addressing it to Kasper Kwant, and on the
  1195. first line of the message I would write:
  1196.  
  1197. cc: ROn van.der.Nagel, Frank Troost
  1198.  
  1199. When the message is saved, a copy will be generated for both ROn and
  1200. Frank.
  1201.  
  1202. Rules for the cc: line(s):
  1203.  
  1204. * It must start on the first line of the message.
  1205.  
  1206. * If all names do not fit on one line, proceed on the next line, and put
  1207.   cc: in front of it again.
  1208.  
  1209. * You can use a full name (it will be looked up in the nodelist), a
  1210.   'macro' (it will be expanded) or an address (it will be looked up in
  1211.   the nodelist). This is exactly like what you can enter at the TO:
  1212.   prompt of a 'normal' netmail message.
  1213.  
  1214.   In addition, if you type a full name which is *not* present in the
  1215.   nodelist (or if you don't want timEd to look in the nodelist, for
  1216.   whatever reason, like speed), you can also specify *both* name and
  1217.   adress, separated by a '#', like this:
  1218.   Gerard van Essen#2:281/527
  1219.  
  1220.   And finally, if you regularly send CC:'s to the same bunch of people,
  1221.   you can put their names, macro's or addresses in a file, one per line,
  1222.   and specify that filename in the cc: line, like this:
  1223.   <c:\timed\names.cc
  1224.   The '<' is chosen as this looks a bit like 'redirection' in DOS :-)
  1225.  
  1226.   The contents of such a file could be:
  1227.  
  1228.   -=-
  1229.   Kasper Kwant
  1230.   ROn van.der.Nagel
  1231.   Frank Troost
  1232.   pietje#2:281/527.29
  1233.   -=-
  1234.  
  1235. Of course, you can combine all this. A full example (let's say that I
  1236. have a macro for my HUB, called 'hub'):
  1237.  
  1238. cc: 1, hub, Kasper Kwant, <names.cc
  1239. cc: ROn van.der.Nagel, .23
  1240.  
  1241. ■ '1' will be expanded to myzone:mynet/1 (in this case 2:281/1)
  1242. ■ 'Kasper Kwant' will be looked up in the nodelist.
  1243. ■ The file 'names.cc' will be read and all persons listed in that file
  1244.   will get a copy.
  1245. ■ ROn van.der.Nagel will be looked up in the nodelist.
  1246. ■ 2:281/527.23 will get a copy too.
  1247.  
  1248.  
  1249. Please don't abuse this feature by sending junk mail to everyone..
  1250.  
  1251.  
  1252. ┌─────────────────────────┐
  1253. │ Command line parameters │
  1254. └─────────────────────────┴──────────────────────────────────────────
  1255.  
  1256. TimEd knows 2 command line parameters:
  1257.  
  1258. -c
  1259.  
  1260. Specify the directory where the config file (and helpfile) can be found,
  1261. like:
  1262.  
  1263. timed.exe -cC:\Bbs\timed\
  1264.  
  1265. And -p, to let timEd pause at the intro screen (so you can check what
  1266. config file were parsed by timEd). Like:
  1267.  
  1268. timed.exe -p
  1269.  
  1270. Of course, you can combine both switches:
  1271.  
  1272. timed.exe -p -cC:\Bbs\timed
  1273.  
  1274.  
  1275. ┌──────────┐
  1276. │ Warnings │
  1277. └──────────┴─────────────────────────────────────────────────────────
  1278.  
  1279. Some things you should know about timEd:
  1280.  
  1281. ■ It doesn't do any zone gating. If you need it, let Squish (or some
  1282.   other program) do it for you. In a Binkley environment, Squish does a
  1283.   fine job at it. I don't know about a Frodo environment (as Squish
  1284.   doesn't really do anything with the netmail there).
  1285.  
  1286. ■ TimEd uses direct screen writes (either to the physical screen, or to
  1287.   the DESQview virtual screen). There is no special code to prevent
  1288.   'snow' on older CGA displays.
  1289.  
  1290. ■ TimEd doesn't really like large messages. Messages larger than 50 - 60
  1291.   Kb may cause very strange behaviour (anything is possible).
  1292.  
  1293. ■ Older versions caused problems on *some* systems running DESQview. My
  1294.   own system was one of those, suffering from exception #13 errors every
  1295.   once in a while, usually when spawning the editor (or just before?).
  1296.   On other systems running DESQview everything is fine. TimEd never
  1297.   causes any trouble when running in an OS/2 DOS session.
  1298.  
  1299.   I've been debugging the code for days, but couldn't find any errors in
  1300.   the code.
  1301.   
  1302.   I now suspect the TC++ spawn function in combination with DV to be the
  1303.   cause of the trouble, and replaced the TC++ spawn function with Ralf
  1304.   Brown's spawn replacement. Please report if it's OK now.
  1305.  
  1306.  
  1307. ┌───────────┐
  1308. │ Technical │
  1309. └───────────┴────────────────────────────────────────────────────────
  1310.  
  1311. TimEd is written using Turbo C++ (second edition), and makes extensive
  1312. use of Scott Dudley's MSGAPI (thanks Scott!).
  1313.  
  1314. It was developed on a 10 Mhz 286 (most of the time), and for a while on
  1315. a 386-40 running OS/2 (also running my BBS) but even OS/2 couldn't
  1316. protect the BBS from my programming skills (...), causing lockups and
  1317. even reboots, so I went back to the 286..
  1318.  
  1319. If someone is really enthusiastic about this program: I would very much
  1320. like to use a Watcom compiler, please buy me one! :-)
  1321.  
  1322. <End of beta documentation>
  1323.  
  1324.